package sunmi.payment.L3;

/**
 * L3常量类
 *
 * @author Created by Lee64 on 2018/3/2.
 */

public class L3Constant {

    public static class RequestParameterName {
        public static final String REQ_TRANS_TYPE = "transType";     // 交易类型
        public static final String REQ_APP_ID = "appId";             // 应用包名
        public static final String REQ_TRANS_ID = "transId";         // 交易ID

        public static final String REQ_AMOUNT = "amount";            // 交易金额
        public static final String REQ_PAYMENT_TYPE = "paymentType"; // 支付方式

        public static final String REQ_ORI_VOUCHER_NO = "oriVoucherNo";     // 原交易凭证号
        public static final String REQ_ORI_REFERENCE_NO = "oriReferenceNo"; // 原交易参考号
        public static final String REQ_ORI_AUTH_NO = "oriAuthNo";           // 原交易授权号
        public static final String REQ_ORI_QR_ORDER_NO = "oriQROrderNo";    // 原交易扫码订单号
        public static final String REQ_ORI_TRANS_DATE = "oriTransDate";     // 原交易时间

        public static final String REQ_IS_PRINT_TICKET = "isPrintTicket";   // 二维码交易是否打印小票
        public static final String REQ_PRINT_INFO = "printInfo";            // 用户联追加打印
        public static final String REQ_PRINT_INFO2 = "printInfo2";          // 用户联追加二维码
        public static final String REQ_PRINT_MERCHANT_INFO = "printMerchantInfo";    // 商户联追加打印
        public static final String REQ_PRINT_MERCHANT_INFO2 = "printMerchantInfo2";  // 商户联追加二维码

        // 打印
        public static final String REQ_IS_LAST_TRADE = "isLastTrade";   // 是否打印末笔交易
        public static final String REQ_IS_ONLY_PRINT = "isOnlyPrint";   // 是否直接打印
        public static final String REQ_LAST_TRADE_TYPE = "lastTradeType";   // 末笔类型

        // 结算
        public static final String REQ_IS_SETTLEMENT_DETAIL = "isSettlementDetail";     // 是否返回结算的订单详情
        public static final String REQ_IS_PRINT_SETTLE_TICKET = "isPrintSettleTicket";     // 结算是否打印结算单

        public static final String REQ_RISE_STRING = "riseString";      // 签购单抬头
        public static final String REQ_IS_MANAGE_PWD = "isManagePwd";   // 是否输入管理员密码
        public static final String REQ_RESERVE = "reserve";             // 预留字段

    }

    /**
     * 请求类型
     */
    public static class RequestType {
        public static final int CONSUMPTION = 0;            // 消费
        public static final int CONSUMPTION_REVOKE = 1;     // 消费撤销
        public static final int RETURN_GOODS = 2;           // 退货
        public static final int FIELD_AUTH = 3;             // 预授权
        public static final int FIELD_AUTH_REVOKE = 4;      // 预授权撤销
        public static final int FIELD_AUTH_COMPLETE = 5;    // 预授权完成
        public static final int FIELD_AUTH_COMPLETE_REVOCATION = 6; // 预授权完成撤销
        public static final int SETTLEMENT = 7; // 结算
        public static final int SIGN = 8;       // 签到
        public static final int QUERY_BALANCE = 9; // 查询余额
    }


    /**
     * 支付方式
     */
    public static class PayType {
        public static final int BARCODE_TYPE_SELECT = -1;       // 由收银员选择支付方式
        public static final int BARCODE_TYPE_BANK = 0;          // 银行卡
        public static final int BARCODE_TYPE_AliPay_SCAN = 1;   // 支付宝扫码（B扫C）
        public static final int BARCODE_TYPE_AliPay_QR = 2;     // 支付宝二维码（C扫B）
        public static final int BARCODE_TYPE_WeChat_SCAN = 3;   // 微信支付扫码（B扫C）
        public static final int BARCODE_TYPE_WeChat_QR = 4;     // 微信支付二维码（C扫B）
        public static final int BARCODE_TYPE_UNION_SCAN = 5;    // 银联扫码(B扫C)
        public static final int BARCODE_TYPE_UNION_QR = 6;      // 银联二维码（C扫B）
        public static final int BARCODE_TYPE_ALL_SCAN_QR = 7;   // 扫码支付（不区分支付宝、微信、银联二维码
    }


}
